import java.util.*;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        
        String s = in.nextLine();

        long ret = 0;

        int len = s.length();
        char[] arrs = s.toCharArray();

        List<Character> list = Arrays.asList('a', 'e', 'i', 'o', 'u');

        List<Character> ch = new ArrayList<>();
        List<Integer> cnt = new ArrayList<>();

        int num = 0;
        ch.add(arrs[0]);
        cnt.add(1);

        for (int i = 1; i < len; i++) {
            if (ch.get(num) == arrs[i]) {
                int temp = cnt.get(num);
                cnt.remove(num);
                cnt.add(temp + 1);
            }
            else {
                ch.add(arrs[i]);
                cnt.add(1);
                num++;
            }
        }

        // for (int i = 0; i <= num; i++) {
        //     System.out.println(ch.get(i) + " " + cnt.get(i));
        // }

        for (int i = 0; i < num - 1; i++) {
            if (!list.contains(ch.get(i))) {
                continue;
            }

            for (int j = num; j > i + 1; j--) {
                if (ch.get(i) != ch.get(j)) {
                    continue;
                }

                int tol = 0;

                Map<Character, Integer> map = new HashMap<>();
                for (int k = j - 1; k > i; k--) {
                    if (list.contains(ch.get(k))) {
                        continue;
                    }

                    map.put(ch.get(k), map.getOrDefault(ch.get(k), 0) + cnt.get(k));
                }

                for (int v : map.values()) {
                    //System.out.println(" " + v);
                    if (v > 1) {
                        tol = (tol + v*(v-1)/2) % 1000000007;
                    }
                    //System.out.println("tol: " + tol);
                }

                //System.out.println("ret11 " + tol + " " + cnt.get(i) + " " + cnt.get(j));
                ret = (ret + tol * cnt.get(i) * cnt.get(j)) % 1000000007;
                //System.out.println("ret " + ret);
            }
        }


        // 第一个，元音
        // for (int i = 0; i < len - 3; i++) {
        //     if (!list.contains(arrs[i])) {
        //         continue;
        //     }

        //     // 最后一个，等于 i
        //     for (int j = len - 1; j > i + 2; j--) {
        //         if (arrs[j] != arrs[i]) {
        //             continue;
        //         }
                
        //         Map<Character, Integer> map = new HashMap<>();
        //         for (int k = j - 1; k > i; k--) {
        //             if (list.contains(arrs[k])) {
        //                 continue;
        //             }

        //             map.put(arrs[k], map.getOrDefault(arrs[k], 0) + 1);
        //             if (map.get(arrs[k]) > 1) {
        //                 ret = (ret + map.get(arrs[k]) - 1) % 1000000007;

        //                 // System.out.println(arrs[i] + " " + arrs[j] + " " + arrs[k]);
        //             }
        //         }
        //     }
        // }

        System.out.println(ret);
    }
}